import os.path
import shutil
import sys
from .myclass import *

Special_Version = []
Name = ''
Version = ''
PBMworkdir = '/tmp/PBMwork/'

# readconf用来读取info.conf文件，获取软件名，版本号
def readconf():
    print('====> 读取软件名及版本信息')
    confpath = os.path.dirname(os.path.dirname(os.path.realpath(__file__))) + '/info.conf'  # 配置文件路径
    f = open(confpath, 'r', encoding='utf-8')
    confinfo = f.readlines()
    global Name
    global Version
    for mumber in confinfo:
        if mumber.split('=')[0].rstrip().lstrip() == 'name':
            Name = mumber.split('=')[1].rstrip().lstrip()
        if mumber.split('=')[0].rstrip().lstrip() == 'version':
            Version = mumber.split('=')[1].rstrip().lstrip()
    f.close()
    if not  Name or not Version:
        print('Error name or version')
        sys.exit()
    else:
        print('软件名: {}\n版本号： {}'.format(Name, Version))

def module_init():
    if os.path.exists(PBMworkdir):
        shutil.rmtree(PBMworkdir)
        print('Notice：模块工作目录已存在，删除模块工作目录 —— PATH：{}'.format(PBMworkdir))
    os.mkdir(PBMworkdir)
    print('Notice：创建模块目录 —— PATH：{}'.format(PBMworkdir))

# distribution用来区分特殊版本，非特殊版本都走normal_method进行测试
def distribution():
    if Version not in Special_Version: # 如果版本为非特殊版本，则进入normal_method
        method = NormalMethod(Version, PBMworkdir)
        method()
    else:
        print('special version')





def main():
    readconf()
    module_init()
    distribution()
